package cn.tedu.store.admin.service;

import cn.tedu.store.commons.pojo.admin.dto.RolePermissionAddNewDTO;
import cn.tedu.store.commons.pojo.admin.vo.RolePermissionListItemVO;
import org.springframework.transaction.annotation.Transactional;

import java.util.List;

@Transactional
public interface IRolePermissionService {

    /**
     * 添加角色与权限关联信息
     *
     * @param rolePermissionAddNewDTO 角色信息
     */
    void addNew(RolePermissionAddNewDTO rolePermissionAddNewDTO);

    /**
     * 删除角色与权限关联信息
     * @param id id
     */
    void delete(Long id);

    /**
     * 修改角色与权限关联信息
     *
     * @param id 角色id
     * @param rolePermissionAddNewDTO 要修改的关联信息
     */
    void updateById(Long id, RolePermissionAddNewDTO rolePermissionAddNewDTO);

    /**
     * 查询所有角色与权限关联信息
     *
     * @return 所有角色与权限详情信息
     */
    List<RolePermissionListItemVO> list();
}
